package com.xnyzc.lhy.mis.service.cms.order;

import com.xnyzc.lhy.mis.entity.result.order.OrderList;

import java.util.List;

/**
 * 导出订单接口
 *
 * @author zhaolijie
 * @date
 */
public interface CmsOrderInfoExportServer {


    /**
     * 查询第一组字段
     * oa_c_order_personal.order_no,
     * oa_c_order_personal.city_id,
     * oa_c_order_personal.vehicle_type,
     * oa_c_order_personal.vehicle_id，
     * oa_c_order_personal.order_channel
     *
     * @return
     */
    List<OrderList> orderInfoGroupOne(OrderList orderList,List<Long> offices);

    /**
     * 查询第二组字段
     * oa_c_order_personal.driver_id,
     * oa_c_order_personal.order_status,
     * oa_c_order_personal.passenger_phone as user_phone,
     * oa_c_order_personal.cancel_reason
     *
     * @return
     */
    List<OrderList> orderInfoGroupTwo(OrderList orderList,List<Long> offices);

    /**
     * 查询第三组字段
     * oa_c_order_personal.didi_order_id,
     * oa_c_order_personal.start_address,
     * oa_c_order_personal.end_address,
     * oa_c_order_personal.actual_fee,
     *
     * @return
     */
    List<OrderList> orderInfoGroupThree(OrderList orderList,List<Long> offices);


    /**
     * 查询第四组字段
     * oa_c_order_personal.total_fee,
     * oa_c_order_personal.start_fee,
     * oa_c_order_personal.duration_fee,
     * oa_c_order_personal.mileage_fee,
     *
     * @return
     */
    List<OrderList> orderInfoGroupFour(OrderList orderList,List<Long> offices);


    /**
     * 查询第五组字段
     * oa_c_order_personal.distance_fee,
     * date_format(oa_c_order_personal.order_time, '%Y-%m-%d %H:%i:%s' ) as order_time,
     * date_format(oa_c_order_personal.arrive_time, '%Y-%m-%d %H:%i:%s' ) as arrive_time ,
     * date_format(oa_c_order_personal.notarize_time, '%Y-%m-%d %H:%i:%s' ) as notarize_time
     *
     * @return
     */
    List<OrderList> orderInfoGroupFive(OrderList orderList,List<Long> offices);


    /**
     * 查询第六组字段
     * date_format(oa_c_order_personal.meet_passenger_time, '%Y-%m-%d %H:%i:%s' ) as meet_passenger_time,
     * date_format(oa_c_order_personal.passenger_pay_time, '%Y-%m-%d %H:%i:%s' ) as passenger_pay_time,
     * date_format(oa_c_order_personal.cancel_order_time, '%Y-%m-%d %H:%i:%s' ) as cancel_order_time,
     * oa_c_order_personal.office_id,
     * oa_c_order_personal.appointment
     *
     * @return
     */
    List<OrderList> orderInfoGroupSix(OrderList orderList,List<Long> offices);


    /**
     * 查询第七组
     * oa_sys_order_details.meet_c_time
     * oa_sys_order_details.driver_in_place_time
     * oa_sys_order_details.start_journey_time
     * oa_sys_order_details.end_journey_time
     * @param orderList
     * @return
     */
    List<OrderList> orderInfoGroupSeven(OrderList orderList,List<Long> offices);
    //
    ///**
    // * 查询第八组
    // * @param orderList
    // * @return
    // */
    //List<OrderList> orderInfoGroupEight(OrderList orderList);
    //
    //
    ///**
    // * 查询第九组
    // * @param orderList
    // * @return
    // */
    //List<OrderList> orderInfoGroupNine(OrderList orderList);

    List<OrderList> allOrderInfo(OrderList orderList,List<Long> offices);

}
